
#导入显示等待判断条件包
from selenium.webdriver.support import expected_conditions as e

#导入浏览器显示包
from selenium.webdriver.remote.webelement import WebElement

#导入显示等待包
from selenium.webdriver.support.wait import WebDriverWait
#导入时间包
import time
#定义默认默认时间
TIMEOUT=8
#定一个类
class Base():
    #定义一个方法
    def __init__(self,driver):
        #封装浏览器驱动
        self.driver=driver


    #封装打开酒仙首页页面方法
    def op_url(self,url):
        self.driver.get(url)

    #封装显示等待点击方法
    def wait_click(self,loc,timeout=None) -> WebElement:
        timeout=TIMEOUT if timeout is None else timeout
        wait=WebDriverWait(self.driver,timeout=timeout)

        return wait.until(e.element_to_be_clickable(loc))

    #封装显示等待方法
    def wait_vale(self,loc,timeout=None) -> WebElement:
        timeout=TIMEOUT if timeout is None else timeout
        wait=WebDriverWait(self.driver,timeout=timeout)

        return wait.until(e.visibility_of_element_located(loc))

    #封装点击方法
    def click(self,loc):
        e=self.wait_click(loc)
        e.click()

    #封装输入方法
    def send_keys(self,loc,info):
        e=self.wait_vale(loc)
        e.send_keys(info)
    #封装强制等待时间方法
    #封装强制等待时间方式
    def sleep(self,loc):
        time.sleep(10)

    #封装断言方法
    def get_text(self,loc):
        return self.wait_click(loc).text

